1. Field of the Invention
The present invention relates to an apparatus and method for providing a context-aware service, and more particularly, to an apparatus and method for providing an adaptive service according to a dynamically changing context by providing a context-aware service framework in which the content of a service is determined by knowledge.
2. Description of the Related Art
Main middleware supporting application software is object-oriented middleware. In conventional object-oriented middleware, a client object acquires an interface for using a service from a server object and uses the server object through the acquired interface.
FIG. 1 illustrates the concept of a conventional representative object-oriented middleware, i.e., a common object request broker architecture (CORBA).
The CORBA is the structure and standard for generating, distributing, and managing distributed program objects on a network and allows programs, which are located at different positions and developed by different vendors, to communicate with each other through an interface broker. Normal object-oriented middleware including CORBA includes an object request broker (ORB) 130 which passes a request from a client object 110 to a server object 120. The ORB 130 is an agent that accomplishes a client-server relationship between objects. When the ORB 130 is used, the client object 110 can clearly call a method located in the server object 120 regardless of whether the method is in one computer or on a network. The ORB 130 intercepts a call of the client object 110 for the server object 120, finds an object which will process a request, transmits a parameter to the found object, calls a method, and returns a processing result back to the client object 110. The client object 110 does not need to know about a location of the server object 120, the program language and operating system which are used, or any other system related facts except for the interface of the server object 120.
As described above, in conventional object-oriented middleware, a server object provides an interface function of a service that it provides. A client object acquires the interface of the server object and directly calls the interface so that the server object provides the service. Accordingly, the client object and the server object have a strong connection therebetween, which is not suitable to a dynamically changing operating environment. Therefore, a middleware providing a service which may be adaptively changed according to a dynamically changing situation is desired.